home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Freelog 117
/
FreelogNo117-OctobreNovembre2013.iso
/
Programmation
/
jedit
/
jedit5.1.0install.exe
/
{app}
/
modes
/
scala.xml
< prev
next >
Wrap
Extensible Markup Language
|
2013-07-28
|
10KB
|
306 lines
<?xml version="1.0"?>
<!-- Scala mode by Daniel Spiewak downloaded on 2012-03-10 from https://github.com/djspiewak/jedit-modes/blob/master/scala.xml -->
<!DOCTYPE MODE SYSTEM "xmode.dtd">
<MODE>
<PROPS>
<PROPERTY NAME="indentOpenBrackets" VALUE="{" />
<PROPERTY NAME="indentCloseBrackets" VALUE="}" />
<PROPERTY NAME="lineUpClosingBracket" VALUE="true" />
<PROPERTY NAME="indentNextLine"
VALUE="(.*((if|while|else\s+if|for)\s*\().*\)|\s*else|\s*case.*=>|.*(def|val|var|type).*=)\s*$"/>
<!-- set this to 'true' if you want to use GNU coding style -->
<PROPERTY NAME="doubleBracketIndent" VALUE="false" />
<PROPERTY NAME="commentStart" VALUE="/*" />
<PROPERTY NAME="commentEnd" VALUE="*/" />
<PROPERTY NAME="lineComment" VALUE="//" />
<PROPERTY NAME="noTabs" VALUE="true" />
<PROPERTY NAME="tabSize" VALUE="2" />
<PROPERTY NAME="indentSize" VALUE="2" />
<PROPERTY NAME="wordBreakChars" VALUE=",+-=<>/?^&*" />
</PROPS>
<RULES IGNORE_CASE="FALSE" HIGHLIGHT_DIGITS="TRUE"
DIGIT_RE="(0[lL]?|[1-9]\d{0,9}(\d{0,9}[lL])?|0[xX]\p{XDigit}{1,8}(\p{XDigit}{0,8}[lL])?|0[0-7]{1,11}([0-7]{0,11}[lL])?|([0-9]+\.[0-9]*|\.[0-9]+)([eE][+-]?[0-9]+)?[fFdD]?|[0-9]+([eE][+-]?[0-9]+[fFdD]?|([eE][+-]?[0-9]+)?[fFdD]))">
<MARK_FOLLOWING TYPE="LABEL">@</MARK_FOLLOWING>
<IMPORT DELEGATE="PRIMARY"/>
</RULES>
<RULES SET="PRIMARY">
<!-- Silly comment -->
<SEQ TYPE="COMMENT1">/**/</SEQ>
<EOL_SPAN TYPE="COMMENT2">//</EOL_SPAN>
<!-- Scaladoc comment -->
<SPAN TYPE="COMMENT3" DELEGATE="SCALADOC">
<BEGIN>/**</BEGIN>
<END>*/</END>
</SPAN>
<!-- Scala comment (Java style) -->
<SPAN TYPE="COMMENT1">
<BEGIN>/*</BEGIN>
<END>*/</END>
</SPAN>
<SPAN MATCH_TYPE="NULL" DELEGATE="MAIN">
<BEGIN>{</BEGIN>
<END>}</END>
</SPAN>
<!-- XML literals; keep this in sync with the XML_LITERAL rule set! -->
<IMPORT DELEGATE="XML_SHARED"/>
<!-- string and character literals -->
<SPAN TYPE="LITERAL1" NO_LINE_BREAK="FALSE" ESCAPE="FALSE">
<BEGIN>"""</BEGIN>
<END>"""</END>
</SPAN>
<SPAN TYPE="LITERAL1" NO_LINE_BREAK="TRUE" ESCAPE="\">
<BEGIN>"</BEGIN>
<END>"</END>
</SPAN>
<SEQ_REGEXP HASH_CHAR="'" TYPE="LITERAL1">'([^'\\]|\\.)'</SEQ_REGEXP>
<!-- symbol literals -->
<SEQ_REGEXP HASH_CHAR="'" TYPE="LABEL">'[0-9a-zA-Z><=+]([0-9a-zA-Z><=+]|_[0-9a-zA-Z><=+])*</SEQ_REGEXP>
<SPAN MATCH_TYPE="LITERAL3" DELEGATE="TYPE_PARAMS">
<BEGIN>[</BEGIN>
<END>]</END>
</SPAN>
<SPAN MATCH_TYPE="NULL">
<BEGIN>`</BEGIN>
<END>`</END>
</SPAN>
<SEQ TYPE="OPERATOR">(</SEQ>
<SEQ TYPE="OPERATOR">)</SEQ>
<SEQ TYPE="OPERATOR">}</SEQ>
<SEQ TYPE="OPERATOR">{</SEQ>
<SEQ TYPE="NULL">.</SEQ>
<SEQ TYPE="NULL">,</SEQ>
<SEQ TYPE="NULL">;</SEQ>
<SEQ TYPE="NULL">:</SEQ>
<!-- Function calls -->
<!-- <MARK_PREVIOUS TYPE="FUNCTION" MATCH_TYPE="OPERATOR">(</MARK_PREVIOUS> -->
<!-- Function declarations (overloaded for different spacing styles)-->
<MARK_FOLLOWING TYPE="FUNCTION" MATCH_TYPE="KEYWORD1" AT_WORD_START="TRUE">def </MARK_FOLLOWING>
<MARK_FOLLOWING TYPE="FUNCTION" MATCH_TYPE="KEYWORD1" AT_WORD_START="TRUE">def </MARK_FOLLOWING>
<MARK_FOLLOWING TYPE="FUNCTION" MATCH_TYPE="KEYWORD1" AT_WORD_START="TRUE">def </MARK_FOLLOWING>
<MARK_FOLLOWING TYPE="FUNCTION" MATCH_TYPE="KEYWORD1" AT_WORD_START="TRUE">def </MARK_FOLLOWING>
<MARK_FOLLOWING TYPE="FUNCTION" MATCH_TYPE="KEYWORD1" AT_WORD_START="TRUE">def </MARK_FOLLOWING>
<MARK_FOLLOWING TYPE="FUNCTION" MATCH_TYPE="KEYWORD1" AT_WORD_START="TRUE">def </MARK_FOLLOWING>
<MARK_FOLLOWING TYPE="FUNCTION" MATCH_TYPE="KEYWORD1" AT_WORD_START="TRUE">def </MARK_FOLLOWING>
<SPAN DELEGATE="PATTERN" MATCH_TYPE="KEYWORD1" AT_WORD_START="TRUE" NO_LINE_BREAK="TRUE">
<BEGIN>case </BEGIN>
<END>=></END>
</SPAN>
<KEYWORDS>
<KEYWORD1>abstract</KEYWORD1>
<KEYWORD1>case</KEYWORD1>
<KEYWORD1>catch</KEYWORD1>
<KEYWORD1>class</KEYWORD1>
<KEYWORD1>def</KEYWORD1>
<KEYWORD1>do</KEYWORD1>
<KEYWORD1>else</KEYWORD1>
<KEYWORD1>extends</KEYWORD1>
<KEYWORD1>final</KEYWORD1>
<KEYWORD1>finally</KEYWORD1>
<KEYWORD1>for</KEYWORD1>
<KEYWORD1>forSome</KEYWORD1>
<KEYWORD1>if</KEYWORD1>
<KEYWORD1>implicit</KEYWORD1>
<KEYWORD1>import</KEYWORD1>
<KEYWORD1>lazy</KEYWORD1>
<KEYWORD1>match</KEYWORD1>
<KEYWORD1>new</KEYWORD1>
<KEYWORD1>object</KEYWORD1>
<KEYWORD1>override</KEYWORD1>
<KEYWORD1>package</KEYWORD1>
<KEYWORD1>private</KEYWORD1>
<KEYWORD1>protected</KEYWORD1>
<KEYWORD1>requires</KEYWORD1>
<KEYWORD1>return</KEYWORD1>
<KEYWORD1>sealed</KEYWORD1>
<KEYWORD1>throw</KEYWORD1>
<KEYWORD1>trait</KEYWORD1>
<KEYWORD1>try</KEYWORD1>
<KEYWORD1>type</KEYWORD1>
<KEYWORD1>val</KEYWORD1>
<KEYWORD1>var</KEYWORD1>
<KEYWORD1>with</KEYWORD1>
<KEYWORD1>while</KEYWORD1>
<KEYWORD1>yield</KEYWORD1>
<KEYWORD1>=></KEYWORD1>
<!-- java.lang.* wrapper types -->
<KEYWORD2>Character</KEYWORD2>
<KEYWORD2>Integer</KEYWORD2>
<!-- scala.* primitive types -->
<KEYWORD2>Boolean</KEYWORD2>
<KEYWORD2>Byte</KEYWORD2>
<KEYWORD2>Char</KEYWORD2>
<KEYWORD2>Double</KEYWORD2>
<KEYWORD2>Float</KEYWORD2>
<KEYWORD2>Int</KEYWORD2>
<KEYWORD2>Long</KEYWORD2>
<KEYWORD2>Short</KEYWORD2>
<KEYWORD2>Unit</KEYWORD2>
<!-- scala.* predefined types -->
<KEYWORD3>Any</KEYWORD3>
<KEYWORD3>AnyRef</KEYWORD3>
<KEYWORD3>Nothing</KEYWORD3>
<LITERAL2>false</LITERAL2>
<LITERAL2>null</LITERAL2>
<LITERAL2>super</LITERAL2>
<LITERAL2>this</LITERAL2>
<LITERAL2>true</LITERAL2>
</KEYWORDS>
</RULES>
<RULES SET="TYPE_PARAMS" DEFAULT="LITERAL3">
<SPAN MATCH_TYPE="LITERAL3" DELEGATE="TYPE_PARAMS">
<BEGIN>[</BEGIN>
<END>]</END>
</SPAN>
</RULES>
<RULES SET="PATTERN" DEFAULT="NULL" IGNORE_CASE="FALSE">
<IMPORT DELEGATE="PRIMARY"/>
<SEQ TYPE="OPERATOR">@</SEQ>
</RULES>
<RULES SET="SCALADOC" DEFAULT="COMMENT3" IGNORE_CASE="TRUE">
<!-- so that @link{...} is highlighted -->
<SEQ TYPE="COMMENT3">{</SEQ>
<!-- so that *@param is highlighted -->
<SEQ TYPE="COMMENT3">*</SEQ>
<!-- Javadoc ignores tags inside <pre> -->
<SPAN TYPE="MARKUP" DELEGATE="SCALADOC_PRE">
<BEGIN><pre></BEGIN>
<END></pre></END>
</SPAN>
<!-- HTML comments -->
<SPAN TYPE="COMMENT1">
<BEGIN><!--</BEGIN>
<END>--></END>
</SPAN>
<!-- HTML tags -->
<SPAN_REGEXP HASH_CHAR="<" TYPE="MARKUP" DELEGATE="xml::TAGS" NO_LINE_BREAK="TRUE">
<BEGIN></?[\da-zA-Z\-]+</BEGIN>
<END>></END>
</SPAN_REGEXP>
<!-- Javadoc allows this -->
<SEQ TYPE="COMMENT3"><</SEQ>
<KEYWORDS>
<LABEL>@author</LABEL>
<LABEL>@beaninfo</LABEL>
<LABEL>@history</LABEL>
<LABEL>@bug</LABEL>
<LABEL>@review</LABEL>
<LABEL>@todo</LABEL>
<LABEL>@idea</LABEL>
<LABEL>@pre</LABEL>
<LABEL>@requires</LABEL>
<LABEL>@post</LABEL>
<LABEL>@ensures</LABEL>
<LABEL>@generates</LABEL>
<LABEL>@modifies</LABEL>
<LABEL>@invariant</LABEL>
<LABEL>@exception</LABEL>
<LABEL>@hides</LABEL>
<LABEL>@overrides</LABEL>
<LABEL>@equivalent</LABEL>
<LABEL>@bon</LABEL>
<LABEL>@access</LABEL>
<LABEL>@example</LABEL>
<LABEL>@design</LABEL>
<LABEL>@serial</LABEL>
<LABEL>@references</LABEL>
<LABEL>@uses</LABEL>
<LABEL>@guard</LABEL>
<LABEL>@values</LABEL>
<LABEL>@complexity</LABEL>
<LABEL>@deprecated</LABEL>
<LABEL>@docRoot</LABEL>
<LABEL>@exception</LABEL>
<LABEL>@link</LABEL>
<LABEL>@param</LABEL>
<LABEL>@return</LABEL>
<LABEL>@see</LABEL>
<LABEL>@serialData</LABEL>
<LABEL>@serialField</LABEL>
<LABEL>@since</LABEL>
<LABEL>@throws</LABEL>
<LABEL>@version</LABEL>
<LABEL>@spec</LABEL>
</KEYWORDS>
</RULES>
<RULES SET="SCALADOC_PRE" DEFAULT="COMMENT3" />
<RULES SET="XML_SHARED">
<SPAN TYPE="COMMENT2">
<BEGIN><!--</BEGIN>
<END>--></END>
</SPAN>
<SPAN TYPE="LITERAL3">
<BEGIN><?</BEGIN>
<END>?></END>
</SPAN>
<SPAN MATCH_TYPE="LITERAL3" TYPE="COMMENT4">
<BEGIN><![CDATA[</BEGIN>
<END>]]></END>
</SPAN>
<SEQ_REGEXP HASH_CHAR="<" TYPE="LITERAL3"><([\d\w_\-:.]+)(\s+[\d\w_\-:.]+=('[^']*'|"[^"]*"))*\s*/\s*></SEQ_REGEXP>
<SPAN_REGEXP DELEGATE="XML_LITERAL" HASH_CHAR="<" MATCH_TYPE="LITERAL3" TYPE="NULL">
<BEGIN><([\d\w_\-:.]+)(\s+[\d\w_\-:.]+=('[^']*'|"[^"]*"))*\s*></BEGIN>
<END></$1></END>
</SPAN_REGEXP>
</RULES>
<!-- TODO find a way to highlight attribute names as LABEL, attribute values as LITERAL1 -->
<RULES SET="XML_LITERAL" DEFAULT="COMMENT4">
<PROPS>
<PROPERTY NAME="commentStart" VALUE="<!--" />
<PROPERTY NAME="commentEnd" VALUE="-->" />
<PROPERTY NAME="lineComment" VALUE="" />
</PROPS>
<IMPORT DELEGATE="XML_SHARED"/>
<SPAN DELEGATE="MAIN">
<BEGIN>{</BEGIN>
<END>}</END>
</SPAN>
<SPAN TYPE="LABEL" NO_WORD_BREAK="TRUE">
<BEGIN>&</BEGIN>
<END>;</END>
</SPAN>
<SEQ_REGEXP HASH_CHAR="<" TYPE="INVALID"></[\d\w_\-:.]+></SEQ_REGEXP> <!-- unmatched closing tags -->
</RULES>
</MODE>